Azure Maps Weather Service (stable:1.1)

2025/12/15 • 17 updated methods

Weather_GetHourlyForecast (updated)
Description The `Get Hourly Forecast` API is an HTTP `GET` that Request detailed weather forecast by the hour for the next 1, 12, 24 (1 day), 72 (3 days), 120 (5 days), and 240 hours (10 days) for the given the given coordinate location. The API returns details such as temperature, humidity, wind, precipitation, and ultraviolet (UV) index. For more information, see [Request hourly weather forecast data](/azure/azure-maps/how-to-request-weather-data#request-hourly-weather-forecast-data). If you are using the Gen1 S0 pricing tier, you can request hourly forecast for the next 1, 12, 24 hours (1 day), and 72 hours (3 days). If you are using Gen1 S1 or Gen2 pricing tier, you can also request hourly forecast for the next 120 (5 days) and 240 hours (10 days).
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetHourlyForecast",
  "$responses": {
    "200": {
      "$properties": {
        "forecasts": {
          "$properties": [
            {
              "#name": "date",
              "Description": {
                "new": "Date and time of the forecast in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-27T19:39:57-08:00.",
                "old": "Date and time of the forecast in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
              }
            },
            {
              "#name": "hasPrecipitation",
              "Description": {
                "new": "A boolean value that indicates whether precipitation (rain, snow, sleet, or hail) is expected during the specified timeframe. Returns true if precipitation is expected, otherwise false.",
                "old": "Indicates the presence or absence of precipitation. True indicates the presence of precipitation, false indicates the absence of precipitation."
              }
            }
          ]
        }
      }
    }
  }
}

⚼ Request

GET:  /weather/forecast/hourly/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
query: array ,
unit: string ,
duration: integer ,
language: string ,
}

⚐ Response (200)

{
forecasts:
[
{
date: string ,
iconCode: integer ,
iconPhrase: string ,
hasPrecipitation: boolean ,
isDaylight: boolean ,
temperature:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
realFeelTemperature:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
wetBulbTemperature:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
dewPoint:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
wind:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
windGust:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
relativeHumidity: integer ,
visibility:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
ceiling:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
uvIndex: integer ,
uvIndexPhrase: string ,
precipitationProbability: integer ,
rainProbability: integer ,
snowProbability: integer ,
iceProbability: integer ,
totalLiquid:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
rain:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
snow:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
ice:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
cloudCover: integer ,
}
,
]
,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetMinuteForecast (updated)
Description The `Get Minute Forecast` API is an HTTP `GET` request that returns minute-by-minute forecasts for a given location for the next 120 minutes. Users can request weather forecasts in intervals of 1, 5 and 15 minutes. The response will include details such as the type of precipitation (including rain, snow, or a mixture of both), start time, and precipitation intensity value (dBZ). For more information, see [Request minute-by-minute weather forecast data](/azure/azure-maps/how-to-request-weather-data#request-minute-by-minute-weather-forecast-data).
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetMinuteForecast",
  "$responses": {
    "200": {
      "$properties": {
        "intervals": {
          "$properties": [
            {
              "#name": "startTime",
              "Description": {
                "new": "The date and time for the start of the interval in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-27T19:39:57-08:00.",
                "old": "The date and time for the start of the interval in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
              }
            }
          ]
        }
      }
    }
  }
}

⚼ Request

GET:  /weather/forecast/minute/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
query: array ,
interval: integer ,
language: string ,
}

⚐ Response (200)

{
summary:
{
briefPhrase60: string ,
shortPhrase: string ,
briefPhrase: string ,
longPhrase: string ,
iconCode: integer ,
}
,
intervalSummaries:
[
{
startMinute: integer ,
endMinute: integer ,
totalMinutes: integer ,
shortPhrase: string ,
briefPhrase: string ,
longPhrase: string ,
iconCode: integer ,
}
,
]
,
intervals:
[
{
startTime: string ,
minute: integer ,
dbz: number ,
shortPhrase: string ,
threshold: string ,
color:
{
red: integer ,
green: integer ,
blue: integer ,
hex: string ,
}
,
simplifiedColor:
{
red: integer ,
green: integer ,
blue: integer ,
hex: string ,
}
,
precipitationType: enum ,
iconCode: integer ,
cloudCover: integer ,
}
,
]
,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetQuarterDayForecast (updated)
Description The `Get Quarter-Day Forecast` API is an HTTP `GET` request that returns a detailed weather forecast by quarter-day for the next 1, 5, 10, or 15 days for a given location. Response data is presented by quarters of the day - morning, afternoon, evening, and overnight. Details such as temperature, humidity, wind, precipitation, and UV index are returned.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetQuarterDayForecast",
  "$responses": {
    "200": {
      "$properties": {
        "forecasts": {
          "$properties": [
            {
              "#name": "effectiveDate",
              "Description": {
                "new": "Date and time of the beginning of the forecast quarter displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-27T19:39:57-08:00.",
                "old": "Date and time of the beginning of the forecast quarter displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
              }
            },
            {
              "#name": "hasPrecipitation",
              "Description": {
                "new": "A boolean value that indicates whether precipitation (rain, snow, sleet, or hail) is expected during the specified timeframe. Returns true if precipitation is expected, otherwise false.",
                "old": "Indicates the presence or absence of precipitation. True indicates the presence of precipitation, false indicates the absence of precipitation."
              }
            }
          ]
        }
      }
    }
  }
}

⚼ Request

GET:  /weather/forecast/quarterDay/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
query: array ,
unit: string ,
duration: integer ,
language: string ,
}

⚐ Response (200)

{
forecasts:
[
{
date: string ,
effectiveDate: string ,
quarter: integer ,
iconCode: integer ,
iconPhrase: string ,
phrase: string ,
temperature:
{
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
realFeelTemperature:
{
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
dewPoint:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
relativeHumidity: integer ,
wind:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
windGust:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
visibility:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
cloudCover: integer ,
hasPrecipitation: boolean ,
precipitationType: enum ,
precipitationIntensity: string ,
precipitationProbability: integer ,
thunderstormProbability: integer ,
totalLiquid:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
rain:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
snow:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
ice:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
]
,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetCurrentConditions (updated)
Description The `Get Current Conditions` API is an HTTP `GET` request that returns detailed current weather conditions such as precipitation, temperature and wind for a given coordinate location. Also, observations from the past 6 or 24 hours for a particular location can be retrieved. The basic information returned with The response includes details such as observation date and time, brief description of the weather conditions, weather icon, precipitation indicator flags, and temperature. Additional details such as RealFeel™ Temperature and UV index are also returned. For more information, see [Request real-time weather data](/azure/azure-maps/how-to-request-weather-data#request-real-time-weather-data)
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetCurrentConditions",
  "$responses": {
    "200": {
      "$properties": {
        "results": {
          "$properties": [
            {
              "#name": "dateTime",
              "Description": {
                "new": "Date and time of the current observation displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-27T19:39:57-08:00.",
                "old": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
              }
            },
            {
              "#name": "hasPrecipitation",
              "Description": {
                "new": "A boolean value that indicates whether precipitation (rain, snow, sleet, or hail) is expected during the specified timeframe. Returns true if precipitation is expected, otherwise false.",
                "old": "Indicates the presence or absence of precipitation. True indicates the presence of precipitation, false indicates the absence of precipitation."
              }
            }
          ]
        }
      }
    }
  }
}

⚼ Request

GET:  /weather/currentConditions/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
query: array ,
unit: string ,
details: string ,
duration: integer ,
language: string ,
}

⚐ Response (200)

{
results:
[
{
dateTime: string ,
phrase: string ,
iconCode: integer ,
hasPrecipitation: boolean ,
isDayTime: boolean ,
temperature:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
realFeelTemperature:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
realFeelTemperatureShade:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
relativeHumidity: integer ,
dewPoint:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
wind:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
windGust:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
uvIndex: integer ,
uvIndexPhrase: string ,
visibility:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
obstructionsToVisibility: string ,
cloudCover: integer ,
ceiling:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
pressure:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
pressureTendency:
{
localizedDescription: string ,
code: string ,
}
,
pastTwentyFourHourTemperatureDeparture:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
apparentTemperature:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
windChillTemperature:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
wetBulbTemperature:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
precipitationSummary:
{
pastHour:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
past3Hours:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
past6Hours:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
past9Hours:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
past12Hours:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
past18Hours:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
past24Hours:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
temperatureSummary:
{
past6Hours:
{
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
past12Hours:
{
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
past24Hours:
{
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
}
,
}
,
]
,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetDailyForecast (updated)
Description The `Get Daily Forecast` API is an HTTP `GET` request that returns detailed weather forecast such as temperature and wind by day for the next 1, 5, 10, 15, 25, or 45 days for a given coordinate location. The response includes details such as temperature, wind, precipitation, air quality, and UV index. For more information, see [Request daily weather forecast data](/azure/azure-maps/how-to-request-weather-data#request-daily-weather-forecast-data). If you are using the Gen1 S0 pricing tier, you can request daily forecast for the next 1, 5, 10, and 15 days. If you are using Gen1 S1 or Gen2 pricing tier, you can also request daily forecast for the next 25 days, and 45 days.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetDailyForecast",
  "$responses": {
    "200": {
      "$properties": {
        "summary": [
          {
            "#name": "startDate",
            "Description": {
              "new": "The start date and time for the forecast summary, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
              "old": "Date and time that the summary is in effect, displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
            }
          },
          {
            "#name": "endDate",
            "Description": {
              "new": "The end date and time for the forecast summary, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
              "old": "Date and time that the summary period ends, displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
            }
          },
          {
            "#name": "severity",
            "Description": {
              "new": "Indicates the severity of the forecasted weather as an integer. Lower numbers represent higher severity: 0 = Unknown, 1 = Significant, 2 = Major, 3 = Moderate, 4 = Minor, 5 = Minimal, 6 = Insignificant, 7 = Informational.",
              "old": "severity"
            }
          },
          {
            "#name": "phrase",
            "Description": {
              "new": "Provides a brief textual summary of the daily weather conditions, displayed in the specified language.",
              "old": "Summary phrase of the daily forecast.  Displayed in specified language."
            }
          },
          {
            "#name": "category",
            "Description": {
              "new": "Provides a one or two-word summary of the forecasted weather conditions, such as Sunny, Partly Cloudy, Rain, or Snow.",
              "old": "one or 2 word(s) to summarize the phrase."
            }
          }
        ],
        "forecasts": {
          "$properties": [
            {
              "#name": "date",
              "Description": {
                "new": "Date and time of the current observation, displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                "old": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
              }
            },
            {
              "#name": "temperature",
              "Description": {
                "new": "Provides the forecasted high and low temperatures for the day, in degrees Celsius (C) or Fahrenheit (F), depending on the `unit` specified in the request.",
                "old": "Temperature values for the day."
              }
            },
            {
              "#name": "realFeelTemperature",
              "Description": {
                "new": "Provides RealFeel\u2122 Temperature values for the specified day, measured in degrees Celsius (C) or Fahrenheit (F), depending on the unit specified in the request. This metric, developed by AccuWeather, incorporates over a dozen factors, including humidity, wind speed, cloud cover, and sun intensity, to offer a comprehensive measure of how the weather actually feels.",
                "old": "RealFeel\u2122 Temperature being returned."
              }
            },
            {
              "#name": "realFeelTemperatureShade",
              "Description": {
                "new": "Provides RealFeel\u2122 Temperature values for the specified day in shaded areas. This metric, developed by AccuWeather, incorporates over a dozen factors, including humidity, wind speed, cloud cover, and sun intensity, to offer a comprehensive measure of how the weather actually feels in the shade.",
                "old": "RealFeel\u2122 Temperature being returned. Describes what the temperature really feels like in the shade."
              }
            },
            {
              "#name": "hoursOfSun",
              "Description": {
                "new": "Provides the expected number of hours of sunshine for the specified day.",
                "old": "Hours of sun."
              }
            },
            {
              "#name": "degreeDaySummary",
              "Description": {
                "new": "Provides a summary of heating and cooling degree days. Heating Degree Days (HDD) measure the demand for energy to heat a building, calculated based on the degrees a day's average temperature is below 65\u00b0F/18\u00b0C. Cooling Degree Days (CDD) measure the demand for energy to cool a building, calculated based on the degrees a day's average temperature is above 65\u00b0F/18\u00b0C. This summary aids in energy management and planning.",
                "old": "Summary for mean temperature of Heating Degree Day or Cooling Degree Day information"
              }
            },
            {
              "#name": "airAndPollen",
              "Description": {
                "new": "A list containing pollutants, pollen levels, and the UV index for the daily forecast. Each list item includes forecasted amounts and categories (e.g., low, high, good, moderate, unhealthy, hazardous) to assess potential health risks.",
                "old": "Air quality"
              },
              "$items": {
                "$properties": [
                  {
                    "#name": "name",
                    "Description": {
                      "new": "**For pollen:**\nReturns the name of the pollen, such as tree, grass, ragweed, or mold.\n\n**For pollutants:**\nWhen the `name` property is `AirQuality`, the name of the pollutant is returned in the `type` property.\nValid pollutants include: PM2.5, PM10, O3, NO2, SO2, and CO.\n\n**For UV Index:**\nWhen the `name` property is `UVIndex`, the UV index is returned in the `value` property. Valid UV Index values range from 0 to 11+ and represent the intensity of ultraviolet radiation.\nUV Index values are categorized as follows:\n
  • 0-2: Low
  • 3-5: Moderate
  • 6-7: High
  • 8-10: Very High
  • 11+: Extreme
", "old": "Name of the pollen or pollutant. For example, grass, mold, weed, air quality, tree and UV index." } }, { "#name": "value", "Description": { "new": "Provides a numerical measurement of the concentration of pollutants or pollen in the air. This value is typically expressed in units relevant to the type of pollutant or pollen being measured, such as micrograms per cubic meter (\u00b5g/m\u00b3) for particulate matter or parts per billion (ppb) for gases like ozone. Both air quality and UV are indices, so they are unitless.", "old": "Value of the given type above. Values associated with mold, grass, weed and tree are in units of parts per cubic meter. Both air quality and UV are indices, so they are unitless." } }, { "#name": "category", "Description": { "new": "Provides a one-word qualitative description of the air quality or pollen level for the forecast period in the specified language. This property categorizes the air quality or pollen count into different levels, such as low, high, good, moderate, unhealthy, hazardous giving users an easy-to-understand assessment of the current conditions.", "old": "Category of the air quality or pollution type. For example, low, high, good, moderate, unhealthy, hazardous." } }, { "#name": "categoryValue", "Description": { "new": "Provides a numerical representation of the air quality or pollen level. This value corresponds to the qualitative `category` property, offering a precise way to quantify the air quality or pollen level. These values range from 1 to 6, with 1 implying good conditions and 6 implying hazardous conditions.", "old": "Value associated with the air quality or pollution category. These values range from 1 to 6. 1 implying good conditions, 6 implying hazardous conditions." } }, { "#name": "type", "Description": { "new": "Specifies the type of air pollutant being measured. Only used when the `name` property equals *AirQuality*. Examples of air pollutants include Particulate Matter (PM2.5, PM10), Ozone (O3), Nitrogen Dioxide (NO2), Sulfur Dioxide (SO2), and Carbon Monoxide (CO).", "old": "Only exists for air quality. Examples include ozone and particle pollution." } } ] } }, { "#name": "day", "Description": { "new": "Provides detailed weather information for the daytime weather forecast, including temperature, precipitation, wind, and other key attributes.", "old": "Day forecast detail" }, "$properties": [ { "#name": "hasPrecipitation", "Description": { "new": "A boolean value that indicates whether precipitation (rain, snow, sleet, or hail) is expected during the specified timeframe. Returns true if precipitation is expected, otherwise false.", "old": "Indicates the presence or absence of precipitation. True indicates the presence of precipitation, false indicates the absence of precipitation." } } ] }, { "#name": "night", "Description": { "new": "Provides detailed weather information for the nighttime weather forecast, including temperature, precipitation, wind, and other key attributes.", "old": "Night forecast detail" }, "$properties": [ { "#name": "hasPrecipitation", "Description": { "new": "A boolean value that indicates whether precipitation (rain, snow, sleet, or hail) is expected during the specified timeframe. Returns true if precipitation is expected, otherwise false.", "old": "Indicates the presence or absence of precipitation. True indicates the presence of precipitation, false indicates the absence of precipitation." } } ] }, { "#name": "sources", "Description": { "new": "A list of sources contributing to the weather forecast data.", "old": "Source(s) of the forecast data." } } ] } } } } }

⚼ Request

GET:  /weather/forecast/daily/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
query: array ,
unit: string ,
duration: integer ,
language: string ,
}

⚐ Response (200)

{
summary:
{
startDate: string ,
endDate: string ,
severity: integer ,
phrase: string ,
category: string ,
}
,
forecasts:
[
{
date: string ,
temperature:
{
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
realFeelTemperature:
{
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
realFeelTemperatureShade:
{
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
hoursOfSun: number ,
degreeDaySummary:
{
heating:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
cooling:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
airAndPollen:
[
{
name: string ,
value: integer ,
category: string ,
categoryValue: integer ,
type: string ,
}
,
]
,
day:
{
iconCode: integer ,
iconPhrase: string ,
localSource:
{
id: integer ,
name: string ,
weatherCode: string ,
}
,
hasPrecipitation: boolean ,
precipitationType: enum ,
precipitationIntensity: string ,
shortPhrase: string ,
longPhrase: string ,
precipitationProbability: integer ,
thunderstormProbability: integer ,
rainProbability: integer ,
snowProbability: integer ,
iceProbability: integer ,
wind:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
windGust:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
totalLiquid:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
rain:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
snow:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
ice:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
hoursOfPrecipitation: number ,
hoursOfRain: number ,
hoursOfSnow: number ,
hoursOfIce: number ,
cloudCover: integer ,
}
,
night:
{
iconCode: integer ,
iconPhrase: string ,
localSource:
{
id: integer ,
name: string ,
weatherCode: string ,
}
,
hasPrecipitation: boolean ,
precipitationType: enum ,
precipitationIntensity: string ,
shortPhrase: string ,
longPhrase: string ,
precipitationProbability: integer ,
thunderstormProbability: integer ,
rainProbability: integer ,
snowProbability: integer ,
iceProbability: integer ,
wind:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
windGust:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
totalLiquid:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
rain:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
snow:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
ice:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
hoursOfPrecipitation: number ,
hoursOfRain: number ,
hoursOfSnow: number ,
hoursOfIce: number ,
cloudCover: integer ,
}
,
sources:
[
string ,
]
,
}
,
]
,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetSevereWeatherAlerts (updated)
Description Severe weather phenomenon can significantly impact our everyday life and business operations. For example, severe weather conditions such as tropical storms, high winds or flooding can close roads and force logistics companies to reroute their fleet causing delays in reaching destinations and breaking the cold chain of refrigerated food products. The `Get Severe Weather Alerts` API is an HTTP `GET` request that returns the severe weather alerts that are available worldwide from both official Government Meteorological Agencies and leading global to regional weather alert providers. The service can return details such as alert type, category, level and detailed description about the active severe alerts for the requested location, like hurricanes, thunderstorms, lightning, heat waves or forest fires. For more information, see [Request severe weather alerts](/azure/azure-maps/how-to-request-weather-data#request-severe-weather-alerts)
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetSevereWeatherAlerts",
  "$responses": {
    "200": {
      "$properties": {
        "results": {
          "$properties": {
            "alertAreas": {
              "$properties": [
                {
                  "#name": "startTime",
                  "Description": {
                    "new": "The start date and time of the alert in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-27T19:39:57-08:00. If the alert crosses multiple time zones the returned time in the response is the local time to the requested coordinate location.",
                    "old": "The start date and time of the alert in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00. If the alert crosses multiple time zones the returned time in the response is the local time to the requested coordinate location."
                  }
                },
                {
                  "#name": "endTime",
                  "Description": {
                    "new": "The date and time at which the alert ended or will end in [ISO 8601](https://en.wikipedia.org/wiki/ISO_format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*. If the alert spans multiple time zones, the response will provide the local time corresponding to the requested coordinates.",
                    "old": "The end date and time of the alert in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00. If the alert crosses multiple time zones the returned time in the response is the local time to the requested coordinate location."
                  }
                },
                {
                  "#name": "alertDetails",
                  "Description": {
                    "new": "Full details associated with the alert. Returned if `details=True`. This field is always returned in the language(s) of choice by the issuing provider and Azure Maps only returns what is created by the provider. Please note, some countries/regions may offer their native language and English. Language parameter won't apply to this field.",
                    "old": "Full details associated with the alert. Returned if `details`=True. This field is always returned in the language(s) of choice by the issuing provider and Azure Maps only returns what is created by the provider. Please note, some countries/regions may offer their native language and English. Language parameter won\u2019t apply to this field."
                  }
                },
                {
                  "#name": "alertDetailsLanguageCode",
                  "Description": {
                    "new": "Language of the `alertDetails`. This field  helps to point out that the language of the `alertDetails` may differ from the requested language parameter. Returned if `details=True`. Language code has been derived from the ISO 639-1 Alpha-2 codes.",
                    "old": "Language of the `alertDetails`. This field  helps to point out that the language of the `alertDetails` may differ from the requested language parameter. Returned if `details`=True. Language code has been derived from the ISO 639-1 Alpha-2 codes."
                  }
                }
              ]
            }
          }
        }
      }
    }
  }
}

⚼ Request

GET:  /weather/severe/alerts/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
query: array ,
language: string ,
details: string ,
}

⚐ Response (200)

{
results:
[
{
countryCode: string ,
alertId: integer ,
description:
{
localized: string ,
english: string ,
}
,
category: string ,
priority: integer ,
class: string ,
level: string ,
source: string ,
sourceId: integer ,
disclaimer: string ,
alertAreas:
[
{
name: string ,
summary: string ,
startTime: string ,
endTime: string ,
latestStatus:
{
localized: string ,
english: enum ,
}
,
alertDetails: string ,
alertDetailsLanguageCode: string ,
}
,
]
,
}
,
]
,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetDailyIndices (updated)
Description The `Get Daily Indices` API is an HTTP `GET` request returns index values that provide guidance to help when planning future activities. For example, a health mobile application can notify users that today is good weather for running or for other outdoors activities like playing golf or flying a kite. Retail stores can optimize their digital marketing campaigns based on predicted index values. The service returns in daily indices values for current and next 5, 10 and 15 days starting from current day.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetDailyIndices",
  "$responses": {
    "200": {
      "$properties": {
        "results": {
          "Description": {
            "new": "The DailyIndex object helps users plan outdoor activities based on weather conditions by providing the activity name, such as 'Ski Weather Forecast'; a numerical rating from 0.0 to 10.0 indicating suitability; a text rating, such as 'Poor'; and a brief description of the conditions, such as 'Expect poor conditions for skiing.'",
            "old": "Information about a daily index."
          },
          "$properties": [
            {
              "#name": "indexName",
              "Description": {
                "new": "The name of the index, indicating the type of activity or condition it relates to, such as running, golfing, or other outdoor activities. For more information, see [Index IDs](/azure/azure-maps/weather-services-concepts#index-ids-and-index-groups-ids) in the *Weather service in Azure Maps* concepts article.",
                "old": "Name of the index, for example, \"Construction\", \"Outdoor Activity\", \"Flight Delays\"."
              }
            },
            {
              "#name": "indexId",
              "Description": {
                "new": "A numeric identifier that uniquely represents a specific index type, distinguishing between different indices for various outdoor activities. For example, an 'indexId' of 1 corresponds to the 'Running' index, and an 'indexId' of 5 corresponds to the 'Golfing' index. For more information, see [Index IDs](/azure/azure-maps/weather-services-concepts#index-ids-and-index-groups-ids) in the *Weather service in Azure Maps* concepts article.",
                "old": "Numeric ID used to identify the specific index. Please refer to [Weather services in Azure Maps](/azure/azure-maps/weather-services-concepts#daily-index-range-sets) for details and to see the supported index IDs. For example, the index ID can support UI visualization scenarios."
              }
            },
            {
              "#name": "dateTime",
              "Description": {
                "new": "Date and time of the observation in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                "old": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
              }
            },
            {
              "#name": "value",
              "Description": {
                "new": "A numerical index value ranging from 0.0 to 10.0 that quantifies the suitability of weather conditions for a specific activity or condition, such as running or golfing. Higher values typically indicate more favorable conditions, depending on the value of the `ascending` property. For example, a value of 8 for the 'Running' index suggests very good weather for running, while a value of 6 for the 'Golfing' index indicates good but slightly less ideal conditions. For more information, see [Daily index range sets](/azure/azure-maps/daily-index-range-sets) in the *Weather service in Azure Maps* concepts article.",
                "old": "Index value. Ranges from 0.0 to 10.0. Please refer to [Weather services in Azure Maps](/azure/azure-maps/weather-services-concepts#daily-index-range-sets) for details and to see the supported ranges."
              }
            },
            {
              "#name": "category",
              "Description": {
                "new": "Provides a qualitative assessment of the index, describing the `categoryValue` property. Categories vary among indices and may include values such as Excellent, Very Good, Good, Fair, and Poor.",
                "old": "Textual description for `categoryValue` corresponding to the level that the index value falls under, for example \"Very Good\"."
              }
            },
            {
              "#name": "categoryValue",
              "Description": {
                "new": "Provides a numeric representation of the category property, indicating the qualitative assessment of the index. Values range from 1 to 5 and should be used with the ascending flag, as they can differ among indices. For example, for Mosquito Activity: Low=1, Moderate=2, High=3, Very High=4, Extreme=5.",
                "old": "Level that the index value falls under, represented by an integer. This value can be 1 through 5 and should be used in combination with the `ascending` flag because it can differ among indices. For example, the following values apply for Mosquito Activity: Low=1, Moderate=2, High=3, Very High=4, and Extreme=5."
              }
            },
            {
              "#name": "ascending",
              "Description": {
                "new": "Indicates the direction of the `value` and `categoryValue` properties. When true, the poorest index value is 0 and the best index value is 10. When false, the poorest index value is 10 and the best index value is 0.",
                "old": "Describes the direction of the `value` and `categoryValue`. For example, when set to `true`, the poorest index value is 0 and the best index value is 10. When set to `true`, the poorest index value is 10 and the best index value is 0."
              }
            },
            {
              "#name": "description",
              "Description": {
                "new": "Provides a brief, user-friendly explanation of the index value, helping users understand its significance in relation to specific weather conditions or activities. For example, if the index value for Outdoor Barbecue is 'Excellent', the description will be 'This is a great day for an outdoor barbecue!'",
                "old": "A textual explanation that can be used for display purposes to summarize the index value and category. For example, when the index value for Flight Delays is very good, the description will be \"Conditions are excellent for flying!\"."
              }
            }
          ]
        }
      }
    }
  }
}

⚼ Request

GET:  /weather/indices/daily/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
query: array ,
language: string ,
duration: integer ,
indexId: integer ,
indexGroupId: integer ,
}

⚐ Response (200)

{
results:
[
{
indexName: string ,
indexId: integer ,
dateTime: string ,
value: number ,
category: string ,
categoryValue: integer ,
ascending: boolean ,
description: string ,
}
,
]
,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetTropicalStormActive (updated)
Description The `Get Tropical Storm Active` API is an HTTP `GET` request that returns a list of all government-issued active tropical storms. Information about the tropical storms includes, government ID, basin ID, year of origin, name and if it is subtropical.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetTropicalStormActive",
  "$responses": {
    "200": {
      "Description": {
        "new": "The ActiveStormResult object provides comprehensive information about ongoing tropical storms. It includes an array of [ActiveStorm](#ActiveStorm) objects, each detailing specific attributes of individual storms. These attributes encompass the storm's government ID, basin ID, year of origin, name, and subtropical status.",
        "old": "All government-issued active storms"
      },
      "$properties": [
        {
          "#name": "results",
          "Description": {
            "new": "An array of [ActiveStorm](#ActiveStorm) objects, each providing essential details about an ongoing tropical storm, as reported by national weather forecasting agencies.",
            "old": "All government-issued active storms"
          },
          "$items": {
            "Description": {
              "new": "Provides essential details about ongoing tropical storms, as reported by national weather forecasting agencies.",
              "old": "Government-issued active storm"
            },
            "$properties": [
              {
                "#name": "year",
                "Description": {
                  "new": "Specifies the year in which the tropical storm originated.",
                  "old": "Year of origination"
                }
              },
              {
                "#name": "basinId",
                "Description": {
                  "new": "Categorizes the different ocean basins where tropical storms can originate. Each basin is assigned a unique identifier to help specify the location of the storm's origin. Valid Basin identifiers include AL, CP, EP, NI, NP, SI, and SP.",
                  "old": "Basin identifier (AL, EP, SI, NI, CP, NP, SP)"
                }
              },
              {
                "#name": "name",
                "Description": {
                  "new": "The name of the storm.",
                  "old": "The name of the depression."
                }
              },
              {
                "#name": "isActive",
                "Description": {
                  "new": "Indicates whether the tropical storm is currently active. If true, the storm is active; if false, the storm is not active.",
                  "old": "True if the depression has been updated recently."
                }
              },
              {
                "#name": "isSubtropical",
                "Description": {
                  "new": "A return value of true indicates that the storm is classified as a subtropical cyclone, meaning it has both tropical and extratropical features.",
                  "old": "True when the depression is classified as a subtropical cyclone."
                }
              },
              {
                "#name": "govId",
                "Description": {
                  "new": "A unique identifier assigned to tropical storms by national weather forecasting agencies. This identifier helps track and reference specific storms accurately, including its status, location, and intensity.",
                  "old": "Government storm ID. This will match the depression number."
                }
              }
            ]
          }
        },
        {
          "#name": "nextLink",
          "Description": {
            "new": "Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results.",
            "old": "The is the link to the next page of the features returned. If it's the last page, no this field."
          }
        }
      ]
    }
  }
}

⚼ Request

GET:  /weather/tropical/storms/active/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
}

⚐ Response (200)

{
results:
[
{
year: string ,
basinId: enum ,
name: string ,
isActive: boolean ,
isSubtropical: boolean ,
govId: integer ,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetTropicalStormSearch (updated)
Description The `Get Tropical Storm Search` API is an HTTP `GET` request that returns a list of government-issued tropical storms by year, basin ID, and government ID. Information about the tropical storms includes, government ID, basin ID, status, year, name and if it is subtropical.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetTropicalStormSearch",
  "$responses": {
    "200": {
      "Description": {
        "new": "Contains a list of government-issued storms that meet the specified search criteria, including details such as the storm's basin ID, government-issued ID and status.",
        "old": "Search government-issued storms"
      },
      "$properties": [
        {
          "#name": "results",
          "Description": {
            "new": "Array of [StormSearchResultItem](#stormsearchresultitem) objects, each representing a tropical storm matching the search criteria provided in the request.",
            "old": "Search government-issued storms"
          },
          "$items": {
            "Description": {
              "new": "A government-issued storm event, including the storm's basin identifier (basinId), government-issued identifier (govId) and status. This object is returned as part of an array within the [StormSearchResult](#stormsearchresult) object.",
              "old": "Government-issued active storm event"
            },
            "$properties": [
              {
                "#name": "year",
                "Description": {
                  "new": "Specifies the year in which the tropical storm originated.",
                  "old": "Year of origination"
                }
              },
              {
                "#name": "basinId",
                "Description": {
                  "new": "Categorizes the different ocean basins where tropical storms can originate. Each basin is assigned a unique identifier to help specify the location of the storm's origin. Valid Basin identifiers include AL, CP, EP, NI, NP, SI, and SP.",
                  "old": "Basin identifier (AL, EP, SI, NI, CP, NP, SP)"
                }
              },
              {
                "#name": "name",
                "Description": {
                  "new": "Identifies the tropical storm by its official name, as designated by the relevant national weather forecasting agency.",
                  "old": "The name of the depression."
                }
              },
              {
                "#name": "isActive",
                "Description": {
                  "new": "Indicates whether the tropical storm is currently active. If true, the storm is active; if false, the storm is not active",
                  "old": "True if the depression has been updated recently."
                }
              },
              {
                "#name": "isRetired",
                "Description": {
                  "new": "Returns true if the storm has been permanently retired in the source basin.",
                  "old": "True if the storm name has been permanently retired in the source basin."
                }
              },
              {
                "#name": "isSubtropical",
                "Description": {
                  "new": "Returns true if the storm is classified as a subtropical cyclone, meaning it has both tropical and extratropical features.",
                  "old": "True when the depression is classified as a subtropical cyclone."
                }
              },
              {
                "#name": "govId",
                "Description": {
                  "new": "A unique identifier assigned to tropical storms by national weather forecasting agencies. This identifier helps track and reference specific storms accurately, including its status, location, and intensity. This will match the depression number.",
                  "old": "Government storm ID. This will match the depression number."
                }
              }
            ]
          }
        },
        {
          "#name": "nextLink",
          "Description": {
            "new": "Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results.",
            "old": "The is the link to the next page of the features returned. If it's the last page, no this field."
          }
        }
      ]
    }
  }
}

⚼ Request

GET:  /weather/tropical/storms/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
year: integer ,
basinId: string ,
govId: integer ,
}

⚐ Response (200)

{
results:
[
{
year: string ,
basinId: enum ,
name: string ,
isActive: boolean ,
isRetired: boolean ,
isSubtropical: boolean ,
govId: integer ,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetTropicalStormForecast (updated)
Description The `Get Tropical Storm Forecasts` API is an HTTP `GET` request that returns individual government-issued tropical storm forecasts. Information about the forecasted tropical storms includes, location, status, date the forecast was created, window, wind speed and wind radii.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetTropicalStormForecast",
  "$responses": {
    "200": {
      "Description": {
        "new": "An array of [StormForecast](#stormforecast) objects, each detailing individual storm forecasts issued by government authorities.",
        "old": "The list of Government-issued forecasts"
      },
      "$properties": [
        {
          "#name": "results",
          "Description": {
            "new": "An array of forecast data for tropical storms, including predicted paths, intensities, and other relevant details. These forecasts are issued by government authorities.",
            "old": "The list of Government-issued forecasts"
          },
          "$items": {
            "Description": {
              "new": "The StormForecast object contains detailed Government-issued information about forecasted tropical storms, including the storm's location, status, forecast creation date, wind speed, and wind radii.",
              "old": "Government-issued storm forecast"
            },
            "$properties": [
              {
                "#name": "dateTime",
                "Description": {
                  "new": "Date and time that the current forecast is valid, displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                  "old": "Datetime the forecast is valid, displayed in ISO8601 format."
                }
              },
              {
                "#name": "initializedDateTime",
                "Description": {
                  "new": "Date and time that the forecast was created, displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                  "old": "Datetime the forecast was created, displayed in ISO8601 format."
                }
              },
              {
                "#name": "location",
                "Description": {
                  "new": "Specifies the geographical coordinates (latitude and longitude) of the storm's forecasted position.",
                  "old": "Coordinates of the storm"
                }
              },
              {
                "#name": "maxWindGust",
                "Description": {
                  "new": "Specifies the expected maximum wind gust speed and direction expected during the storm, measured in kilometers per hour (km/h) or miles per hour (mph), based on the specified unit. Wind direction is given in azimuth degrees, ranging from 0\u00b0 (true North) to 359\u00b0, moving clockwise. May be NULL.",
                  "old": "Maximum wind gust speed associated with the storm. May be NULL."
                }
              },
              {
                "#name": "sustainedWind",
                "Description": {
                  "new": "Specifies the maximum sustained wind speed expected during the storm, measured in  kilometers per hour (km/h) or miles per hour (mph), based on the unit specified in the request. May be NULL.",
                  "old": "Maximum sustained wind speed associated with the storm. May be NULL."
                }
              },
              {
                "#name": "status",
                "Description": {
                  "new": "Indicates the current state or condition of the storm. This property provides information on whether the storm is active, dissipating, or has reached another significant status. Possible values:
  • Cyclonic storm
  • Deep depression
  • Depression
  • Extremely severe cyclonic storm
  • Hurricane category (1-5)
  • Intense tropical cyclone
  • Moderate tropical storm
  • Post-tropical cyclone
  • Potential tropical cyclone
  • Severe cyclonic storm
  • Severe tropical storm
  • Subtropical
  • Super cyclonic storm
  • Tropical cyclone
  • Tropical cyclone category (1-5)
  • Tropical depression
  • Tropical disturbance
  • Tropical storm
  • Typhoon
  • Very intense tropical cyclone
  • Very severe cyclonic storm
  • Very strong typhoon
  • Violent typhoon
", "old": "Possible status values include:
  • Cyclonic storm
  • Deep depression
  • Depression
  • Extremely severe cyclonic storm
  • Hurricane category (1-5)
  • Intense tropical cyclone
  • Moderate tropical storm
  • Post-tropical cyclone
  • Potential tropical cyclone
  • Severe cyclonic storm
  • Severe tropical storm
  • Subtropical
  • Super cyclonic storm
  • Tropical cyclone
  • Tropical cyclone category (1-5)
  • Tropical depression
  • Tropical disturbance
  • Tropical storm
  • Typhoon
  • Very intense tropical cyclone
  • Very severe cyclonic storm
  • Very strong typhoon
  • Violent typhoon
" } }, { "#name": "window", "Description": { "new": "Provides forecast details for the storm within the specified time frame. If the `windowGeometry` parameter is set to true in the API request, this property will include GeoJSON details for the window geometry.", "old": "Contains information about the forecast window for the storm during the specified time period (not the entire cone). If windowGeometry=true in the request, this object will include geoJSON details for window geometry." } }, { "#name": "windRadiiSummary", "Description": { "new": "Contains an array of [StormWindRadiiSummary](#stormwindradiisummary) objects, detailing wind radii in different quadrants around the storm's center. Displayed when `details=true` or `radiiGeometry=true` in the request.", "old": "Displayed when details=true or radiiGeometry=true in the request." }, "$items": { "Description": { "new": "The StormWindRadiiSummary object provides a high-level overview of the wind distribution around a tropical storm. It includes the geometric representation of wind radii (radiiGeometry), detailed sector-based wind data (radiusSectorData), and the wind speeds at various distances from the storm's center (windSpeed). These properties collectively help in understanding the spatial extent and intensity of winds associated with the storm. Displayed when the request includes `details=true` or `radiiGeometry=true`.", "old": "Displayed when details=true or radiiGeometry=true in the request." }, "$properties": [ { "#name": "dateTime", "Description": { "new": "Date and time that the wind radii summary data is valid, displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.", "old": "DateTime for which the wind radii summary data is valid, displayed in ISO8601 format." } }, { "#name": "windSpeed", "Description": { "new": "The overall wind speed associated with the storm's wind radii data. This single wind speed value applies collectively to all the sectors within the [radiusSectorData](#radiusSectorData) array, which provides detailed geographical information for the NE, SE, SW, and NW quadrants of the storm's wind radii.", "old": "Wind speed associated with the radiusSectorData." } }, { "#name": "radiusSectorData", "Description": { "new": "An array of [RadiusSector](#RadiusSector) objects. Each object contains detailed geographical information (in geoJSON format) needed to plot wind radius quadrants: 0-90\u00b0 for NE, 90-180\u00b0 for SE, 180-270\u00b0 for SW, and 270-360\u00b0 for NW.", "old": "Contains the information needed to plot wind radius quadrants. Bearing 0\u201390 = NE quadrant; 90\u2013180 = SE quadrant; 180\u2013270 = SW quadrant; 270\u2013360 = NW quadrant." }, "$items": { "Description": { "new": "Bearing 0-90 = NE quadrant; 90-180 = SE quadrant; 180-270 = SW quadrant; 270-360 = NW quadrant.", "old": "Bearing 0\u201390 = NE quadrant; 90\u2013180 = SE quadrant; 180\u2013270 = SW quadrant; 270\u2013360 = NW quadrant." } } }, { "#name": "radiiGeometry", "Description": { "new": "A GeoJSON object that is returned when the `radiiGeometry` parameter is set to true in the request. It provides detailed geographical information about the storm's wind radii, including the spatial representation of areas affected by different wind speeds.", "old": "GeoJSON object. Displayed when radiiGeometry=true in request. Describes the outline of the wind radius quadrants." } } ] } } ] } }, { "#name": "nextLink", "Description": { "new": "Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results.", "old": "The is the link to the next page of the features returned. If it's the last page, no this field." } } ] } } }

⚼ Request

GET:  /weather/tropical/storms/forecasts/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
year: integer ,
basinId: string ,
govId: integer ,
unit: string ,
details: boolean ,
radiiGeometry: boolean ,
windowGeometry: boolean ,
}

⚐ Response (200)

{
results:
[
{
dateTime: string ,
initializedDateTime: string ,
location:
{
latitude: number ,
longitude: number ,
}
,
maxWindGust:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
sustainedWind:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
status: string ,
window:
{
left:
{
latitude: number ,
longitude: number ,
}
,
right:
{
latitude: number ,
longitude: number ,
}
,
beginDateTime: string ,
endDateTime: string ,
beginStatus: string ,
endStatus: string ,
geometry: object ,
}
,
windRadiiSummary:
[
{
dateTime: string ,
windSpeed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
radiusSectorData:
[
{
beginBearing: number ,
endBearing: number ,
range: number ,
}
,
]
,
radiiGeometry: object ,
}
,
]
,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetTropicalStormLocations (updated)
Description The `Get Tropical Storm Locations` API is an HTTP `GET` request that returns the location of individual government-issued tropical storms. Information about the tropical storms includes, location coordinates, geometry, basin ID, date, wind details and wind radii.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetTropicalStormLocations",
  "$responses": {
    "200": {
      "Description": {
        "new": "Contains an array of [StormLocation](#stormlocation) objects, representing government-issued active storm events. Includes details such as latitude and longitude coordinates, wind speed and direction, wind radii, basin identifier, minimum pressure, movement, status, and other relevant attributes.",
        "old": "Locations for an individual government-issued storm"
      },
      "$properties": [
        {
          "#name": "results",
          "Description": {
            "new": "Array of data points, each detailing the location of an individual government-issued storm, including coordinates, geometry, basin ID, date, wind details, and wind radii.",
            "old": "Locations for an individual government-issued storm"
          },
          "$items": {
            "Description": {
              "new": "Contains detailed information about a tropical storm's location, including latitude and longitude coordinates, wind speed and direction, wind radii, and basin identifier. Essential for tracking and forecasting the storm's movement and intensity.",
              "old": "Location for an individual Government-issued storm"
            },
            "$properties": [
              {
                "#name": "dateTime",
                "Description": {
                  "new": "Date and time that the forecast is valid, displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                  "old": "Datetime the forecast is valid, displayed in ISO8601 format."
                }
              },
              {
                "#name": "location",
                "Description": {
                  "new": "Specifies the latitude and longitude coordinates of the storm's center.",
                  "old": "Coordinates of the storm"
                }
              },
              {
                "#name": "maxWindGust",
                "Description": {
                  "new": "Specifies the expected maximum wind gust speed and direction expected during the storm, measured in kilometers per hour (km/h) or miles per hour (mph), based on the specified unit. Wind direction is given in azimuth degrees, ranging from 0\u00b0 (true North) to 359\u00b0, moving clockwise. May be NULL.",
                  "old": "Maximum wind gust speed associated with the storm. May be NULL."
                }
              },
              {
                "#name": "sustainedWind",
                "Description": {
                  "new": "Maximum sustained wind speed associated with the storm, measured in kilometers per hour (km/h) or miles per hour (mph), based on the specified unit. May be NULL.",
                  "old": "Maximum sustained wind speed associated with the storm. May be NULL."
                }
              },
              {
                "#name": "minimumPressure",
                "Description": {
                  "new": "Specifies the lowest atmospheric pressure associated with the storm, measured in millibars (mb) or  inches of mercury (inHg), depending on the unit specified in the request. This value may be NULL.",
                  "old": "Minimum pressure associated with the storm. May be NULL."
                }
              },
              {
                "#name": "movement",
                "Description": {
                  "new": "Returns the storm's current direction (in degrees) and speed, measured in kilometers per hour (km/h) or miles per hour (mph), depending on the specified unit.",
                  "old": "The storm movement information."
                }
              },
              {
                "#name": "status",
                "Description": {
                  "new": "Returns the current classification or stage of the storm in English, such as a tropical depression, tropical storm, or hurricane.",
                  "old": "Storm status, in English."
                }
              },
              {
                "#name": "isSubtropical",
                "Description": {
                  "new": "A return value of true indicates that the storm is classified as a subtropical cyclone, meaning it has both tropical and extratropical features.",
                  "old": "True when the depression is classified as a subtropical cyclone."
                }
              },
              {
                "#name": "isPostTropical",
                "Description": {
                  "new": "Returns true if the storm has transitioned from a tropical cyclone to a post-tropical cyclone, aiding in understanding the storm's lifecycle phase.",
                  "old": "True when the storm is weakening away, and will no longer become a tropical system."
                }
              },
              {
                "#name": "windRadiiSummary",
                "Description": {
                  "new": "Contains an array of [StormWindRadiiSummary](#stormwindradiisummary) objects, detailing wind radii in different quadrants around the storm's center. Displayed when `details=true` or `radiiGeometry=true` in the request.",
                  "old": "Displayed when details=true or radiiGeometry=true in the request."
                },
                "$items": {
                  "Description": {
                    "new": "The StormWindRadiiSummary object provides a high-level overview of the wind distribution around a tropical storm. It includes the geometric representation of wind radii (radiiGeometry), detailed sector-based wind data (radiusSectorData), and the wind speeds at various distances from the storm's center (windSpeed). These properties collectively help in understanding the spatial extent and intensity of winds associated with the storm. Displayed when the request includes `details=true` or `radiiGeometry=true`.",
                    "old": "Displayed when details=true or radiiGeometry=true in the request."
                  },
                  "$properties": [
                    {
                      "#name": "dateTime",
                      "Description": {
                        "new": "Date and time that the wind radii summary data is valid, displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                        "old": "DateTime for which the wind radii summary data is valid, displayed in ISO8601 format."
                      }
                    },
                    {
                      "#name": "windSpeed",
                      "Description": {
                        "new": "The overall wind speed associated with the storm's wind radii data. This single wind speed value applies collectively to all the sectors within the [radiusSectorData](#radiusSectorData) array, which provides detailed geographical information for the NE, SE, SW, and NW quadrants of the storm's wind radii.",
                        "old": "Wind speed associated with the radiusSectorData."
                      }
                    },
                    {
                      "#name": "radiusSectorData",
                      "Description": {
                        "new": "An array of [RadiusSector](#RadiusSector) objects. Each object contains detailed geographical information (in geoJSON format) needed to plot wind radius quadrants: 0-90\u00b0 for NE, 90-180\u00b0 for SE, 180-270\u00b0 for SW, and 270-360\u00b0 for NW.",
                        "old": "Contains the information needed to plot wind radius quadrants. Bearing 0\u201390 = NE quadrant; 90\u2013180 = SE quadrant; 180\u2013270 = SW quadrant; 270\u2013360 = NW quadrant."
                      },
                      "$items": {
                        "Description": {
                          "new": "Bearing 0-90 = NE quadrant; 90-180 = SE quadrant; 180-270 = SW quadrant; 270-360 = NW quadrant.",
                          "old": "Bearing 0\u201390 = NE quadrant; 90\u2013180 = SE quadrant; 180\u2013270 = SW quadrant; 270\u2013360 = NW quadrant."
                        }
                      }
                    },
                    {
                      "#name": "radiiGeometry",
                      "Description": {
                        "new": "A GeoJSON object that is returned when the `radiiGeometry` parameter is set to true in the request. It provides detailed geographical information about the storm's wind radii, including the spatial representation of areas affected by different wind speeds.",
                        "old": "GeoJSON object. Displayed when radiiGeometry=true in request. Describes the outline of the wind radius quadrants."
                      }
                    }
                  ]
                }
              }
            ]
          }
        },
        {
          "#name": "nextLink",
          "Description": {
            "new": "Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results.",
            "old": "The is the link to the next page of the features returned. If it's the last page, no this field."
          }
        }
      ]
    }
  }
}

⚼ Request

GET:  /weather/tropical/storms/locations/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
year: integer ,
basinId: string ,
govId: integer ,
details: boolean ,
radiiGeometry: boolean ,
unit: string ,
current: boolean ,
}

⚐ Response (200)

{
results:
[
{
dateTime: string ,
location:
{
latitude: number ,
longitude: number ,
}
,
maxWindGust:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
sustainedWind:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
minimumPressure:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
movement:
{
direction:
{
degrees: integer ,
localizedDescription: string ,
}
,
speed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
status: string ,
isSubtropical: boolean ,
hasTropicalPotential: boolean ,
isPostTropical: boolean ,
windRadiiSummary:
[
{
dateTime: string ,
windSpeed:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
radiusSectorData:
[
{
beginBearing: number ,
endBearing: number ,
range: number ,
}
,
]
,
radiiGeometry: object ,
}
,
]
,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetCurrentAirQuality (updated)
Description The `Get Current Air Quality` API is an HTTP `GET` request that returns detailed information about the concentration of pollutants and overall status for current air quality, including pollution levels, air quality index values, the dominant pollutant, and a brief statement summarizing risk level and suggested precautions.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetCurrentAirQuality",
  "$responses": {
    "200": {
      "Description": {
        "new": "An array of [AirQuality](#airquality) objects, each providing comprehensive information about the current air quality at the specified location.",
        "old": "This object is returned from a successful Get Air Quality call."
      },
      "$properties": [
        {
          "#name": "results",
          "Description": {
            "new": "Detailed air quality results within the specified location, including properties such as the air quality index (AQI), dominant pollutant, pollutant levels, risk level, and suggested precautions.",
            "old": "A list of all air quality results for the queried location."
          },
          "$items": {
            "Description": {
              "new": "The AirQuality object provides comprehensive information about the current air quality at the specified location. This includes the concentration levels of various pollutants, numerical Air Quality Index (AQI) values indicating the overall air quality, and identification of the dominant pollutant affecting the air quality. Additionally, it offers a risk level summary, which briefly outlines potential health risks and suggests precautions.",
              "old": "Information about the air quality in a specific location at a specific time."
            },
            "$properties": [
              {
                "#name": "dateTime",
                "Description": {
                  "new": "Date and time of the current observation, displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                  "old": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
                }
              },
              {
                "#name": "index",
                "Description": {
                  "new": "The air quality index (AQI) is an air quality rating scale set by local regulating bodies. Scales can vary widely based on location. For more information, see [Air quality index](https://en.wikipedia.org/wiki/Air_quality_index) in Wikipedia.",
                  "old": "Air quality rating on a scale set by local regulating bodies. Scales can vary widely based on location. See [Wikipedia](https://en.wikipedia.org/wiki/Air_quality_index) for more information."
                }
              },
              {
                "#name": "globalIndex",
                "Description": {
                  "new": "Provides an internationally standardized way to understand the concentration of pollutants in the air. Ratings range from 0 to 300 and up, with higher numbers representing worse air quality. The pollutants measured includes PM2.5, PM10, NO2, SO2, CO, and O3.",
                  "old": "Internationally normalized air quality rating on a scale from 0 to 300 and up, with higher numbers representing worse air quality."
                }
              },
              {
                "#name": "dominantPollutant",
                "Description": {
                  "new": "Identifies the pollutant with the highest concentration.",
                  "old": "The pollutant with the highest concentration."
                }
              },
              {
                "#name": "category",
                "Description": {
                  "new": "Provides a one-word description of the air quality for the forecast period in the specified language, such as Poor, Fair, or Excellent.",
                  "old": "One-word description of the air quality in the requested language. For example, \"Excellent\"."
                }
              },
              {
                "#name": "categoryColor",
                "Description": {
                  "new": "Provides a unique hexadecimal color code corresponding to the air quality category for each day in the forecast period. This color helps users quickly identify the air quality level visually, with each color corresponding to a category such as Poor, Fair, or Excellent.",
                  "old": "A unique color corresponding to the category of this air quality result."
                }
              },
              {
                "#name": "pollutants",
                "Description": {
                  "new": "An array containing detailed information about each pollutant in the response. Returned when the `pollutants` URI Parameter is *true*.",
                  "old": "Information about individual pollutants."
                }
              }
            ]
          }
        },
        {
          "#name": "nextLink",
          "Description": {
            "new": "Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results.",
            "old": "The is the link to the next page of the features returned. If it's the last page, no this field."
          }
        }
      ]
    }
  }
}

⚼ Request

GET:  /weather/airQuality/current/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
language: string ,
query: array ,
pollutants: boolean ,
}

⚐ Response (200)

{
results:
[
{
dateTime: string ,
index: number ,
globalIndex: number ,
dominantPollutant: enum ,
category: string ,
categoryColor: string ,
description: string ,
pollutants:
[
{
type: enum ,
name: string ,
index: number ,
globalIndex: number ,
concentration:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
]
,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetAirQualityDailyForecasts (updated)
Description The `Get Air Quality Daily Forecasts` API is an HTTP `GET` request that returns detailed information about the concentration of pollutants and overall status of forecasted daily air quality. The service can provide forecasted daily air quality information for the upcoming 1 to 7 days, including pollution levels, air quality index values, the dominant pollutant, and a brief statement summarizing risk level and suggested precautions.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetAirQualityDailyForecasts",
  "$responses": {
    "200": {
      "Description": {
        "new": "Returns an array of [DailyAirQuality](#dailyairquality) objects, each detailing the forecasted air quality for a specific day. The number of days included is determined by the `duration` URI parameter (1-7 days, default is 1).",
        "old": "This object is returned from a successful Get Daily Air Quality Forecast call."
      },
      "$properties": [
        {
          "#name": "results",
          "Description": {
            "new": "Detailed air quality forecast data for each day within the requested duration, including properties such as date, air quality index (AQI), dominant pollutant, pollutant levels, risk level, and suggested precautions.",
            "old": "A list of all daily air quality forecasts for the queried location."
          },
          "$items": {
            "Description": {
              "new": "Provides a summary of the forecasted air quality conditions for a specific day and location, in the requested language. This includes key metrics such as the air quality index (AQI), the dominant pollutant expected for that day, and a brief description of the overall air quality. The information helps users understand what to expect regarding air quality and any potential health implications for the forecasted day.",
              "old": "Information about the air quality in a specific location at a specific time."
            },
            "$properties": [
              {
                "#name": "dateTime",
                "Description": {
                  "new": "Date and time of the current observation, displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                  "old": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
                }
              },
              {
                "#name": "index",
                "Description": {
                  "new": "The air quality index (AQI) is a rating scale set by local regulating bodies, which can vary widely by location. For more information, see [Air quality index](https://en.wikipedia.org/wiki/Air_quality_index) in Wikipedia.",
                  "old": "Air quality rating on a scale set by local regulating bodies. Scales can vary widely based on location. See [Wikipedia](https://en.wikipedia.org/wiki/Air_quality_index) for more information."
                }
              },
              {
                "#name": "globalIndex",
                "Description": {
                  "new": "Provides an internationally standardized air quality rating from 0 to 300 and above, with higher numbers indicating worse air quality. The index measures pollutants such as PM2.5, PM10, NO2, SO2, CO, and O3.",
                  "old": "Internationally normalized air quality rating on a scale from 0 to 300 and up, with higher numbers representing worse air quality."
                }
              },
              {
                "#name": "category",
                "Description": {
                  "new": "Provides a one-word summary of the air quality for the forecast period in the specified language, such as Poor, Fair, or Excellent. This summary helps users quickly understand the overall air quality conditions.",
                  "old": "One-word description of the air quality in the requested language. For example, \"Excellent\"."
                }
              },
              {
                "#name": "categoryColor",
                "Description": {
                  "new": "Provides a unique hexadecimal color code for each air quality category in the daily forecast, visually representing levels such as Poor, Fair, or Excellent.",
                  "old": "A unique color corresponding to the category of this air quality result."
                }
              },
              {
                "#name": "description",
                "Description": {
                  "new": "Provides a summary of the forecasted air quality conditions for a specific day and location, in the requested language.",
                  "old": "A textual explanation of this air quality result in the requested language."
                }
              }
            ]
          }
        },
        {
          "#name": "nextLink",
          "Description": {
            "new": "Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results.",
            "old": "The is the link to the next page of the features returned. If it's the last page, no this field."
          }
        }
      ]
    }
  }
}

⚼ Request

GET:  /weather/airQuality/forecasts/daily/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
language: string ,
query: array ,
duration: integer ,
}

⚐ Response (200)

{
results:
[
{
dateTime: string ,
index: number ,
globalIndex: number ,
dominantPollutant: enum ,
category: string ,
categoryColor: string ,
description: string ,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetAirQualityHourlyForecasts (updated)
Description The `Get Air Quality Hourly Forecasts` API is an HTTP `GET` request that returns detailed information about the concentration of pollutants and overall status for forecasted upcoming hourly air quality. The service can provide forecasted hourly air quality information for the upcoming time spans of 1, 12, 24, 48, 72, and 96 hours, including pollution levels, air quality index values, the dominant pollutant, and a brief statement summarizing risk level and suggested precautions.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetAirQualityHourlyForecasts",
  "$responses": {
    "200": {
      "Description": {
        "new": "An array of [AirQuality](#airquality) objects, each providing comprehensive information about the current air quality at the specified location.",
        "old": "This object is returned from a successful Get Air Quality call."
      },
      "$properties": [
        {
          "#name": "results",
          "Description": {
            "new": "Detailed air quality results within the specified location, including properties such as the air quality index (AQI), dominant pollutant, pollutant levels, risk level, and suggested precautions.",
            "old": "A list of all air quality results for the queried location."
          },
          "$items": {
            "Description": {
              "new": "The AirQuality object provides comprehensive information about the current air quality at the specified location. This includes the concentration levels of various pollutants, numerical Air Quality Index (AQI) values indicating the overall air quality, and identification of the dominant pollutant affecting the air quality. Additionally, it offers a risk level summary, which briefly outlines potential health risks and suggests precautions.",
              "old": "Information about the air quality in a specific location at a specific time."
            },
            "$properties": [
              {
                "#name": "dateTime",
                "Description": {
                  "new": "Date and time of the current observation, displayed in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                  "old": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
                }
              },
              {
                "#name": "index",
                "Description": {
                  "new": "The air quality index (AQI) is an air quality rating scale set by local regulating bodies. Scales can vary widely based on location. For more information, see [Air quality index](https://en.wikipedia.org/wiki/Air_quality_index) in Wikipedia.",
                  "old": "Air quality rating on a scale set by local regulating bodies. Scales can vary widely based on location. See [Wikipedia](https://en.wikipedia.org/wiki/Air_quality_index) for more information."
                }
              },
              {
                "#name": "globalIndex",
                "Description": {
                  "new": "Provides an internationally standardized way to understand the concentration of pollutants in the air. Ratings range from 0 to 300 and up, with higher numbers representing worse air quality. The pollutants measured includes PM2.5, PM10, NO2, SO2, CO, and O3.",
                  "old": "Internationally normalized air quality rating on a scale from 0 to 300 and up, with higher numbers representing worse air quality."
                }
              },
              {
                "#name": "dominantPollutant",
                "Description": {
                  "new": "Identifies the pollutant with the highest concentration.",
                  "old": "The pollutant with the highest concentration."
                }
              },
              {
                "#name": "category",
                "Description": {
                  "new": "Provides a one-word description of the air quality for the forecast period in the specified language, such as Poor, Fair, or Excellent.",
                  "old": "One-word description of the air quality in the requested language. For example, \"Excellent\"."
                }
              },
              {
                "#name": "categoryColor",
                "Description": {
                  "new": "Provides a unique hexadecimal color code corresponding to the air quality category for each day in the forecast period. This color helps users quickly identify the air quality level visually, with each color corresponding to a category such as Poor, Fair, or Excellent.",
                  "old": "A unique color corresponding to the category of this air quality result."
                }
              },
              {
                "#name": "pollutants",
                "Description": {
                  "new": "An array containing detailed information about each pollutant in the response. Returned when the `pollutants` URI Parameter is *true*.",
                  "old": "Information about individual pollutants."
                }
              }
            ]
          }
        },
        {
          "#name": "nextLink",
          "Description": {
            "new": "Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results.",
            "old": "The is the link to the next page of the features returned. If it's the last page, no this field."
          }
        }
      ]
    }
  }
}

⚼ Request

GET:  /weather/airQuality/forecasts/hourly/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
language: string ,
query: array ,
duration: integer ,
pollutants: boolean ,
}

⚐ Response (200)

{
results:
[
{
dateTime: string ,
index: number ,
globalIndex: number ,
dominantPollutant: enum ,
category: string ,
categoryColor: string ,
description: string ,
pollutants:
[
{
type: enum ,
name: string ,
index: number ,
globalIndex: number ,
concentration:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
]
,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetDailyHistoricalActuals (updated)
Description The `Get Daily Historical Actuals` API is an HTTP `GET` request that returns climatology data such as past daily actual observed temperatures, precipitation, snowfall, snow depth and cooling/heating degree day information, for the day at a given coordinate location. The data is requested for a specified date range, up to 31 days in a single API request. Generally, historical data may be available as far back as the last 5 to 40+ years, depending on the location.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetDailyHistoricalActuals",
  "$parameters": [
    {
      "#name": "startDate",
      "Description": {
        "new": "Start date in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-27. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31).",
        "old": "Start date in ISO 8601 format, for example, 2019-10-27. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31)."
      }
    },
    {
      "#name": "endDate",
      "Description": {
        "new": "End date in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-28. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31).",
        "old": "End date in ISO 8601 format, for example, 2019-10-28. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31)."
      }
    }
  ],
  "$responses": {
    "200": {
      "$properties": [
        {
          "#name": "results",
          "Description": {
            "new": "Aggregates detailed historical weather data for specific dates and locations, including temperature, precipitation, snowfall, snow depth, and degree day summaries.",
            "old": "Historical actuals for each requested day."
          },
          "$items": {
            "$properties": [
              {
                "#name": "date",
                "Description": {
                  "new": "The date and time for the requested weather data in ISO 8061 format displayed in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                  "old": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
                }
              },
              {
                "#name": "temperature",
                "Description": {
                  "new": "Provides the observed maximum, minimum, and average temperatures for a specific day at a given location.",
                  "old": "Temperature values."
                }
              },
              {
                "#name": "degreeDaySummary",
                "Description": {
                  "new": "Provides a summary of heating and cooling degree days. Heating Degree Days (HDD) measure the demand for energy to heat a building, calculated based on the degrees a day's average temperature is below 65\u00b0F/18\u00b0C. Cooling Degree Days (CDD) measure the demand for energy to cool a building, calculated based on the degrees a day's average temperature is above 65\u00b0F/18\u00b0C. This summary aids in energy management and planning.",
                  "old": "Summary of heating or cooling degree day information. Degree days are measures of how cold or warm a location is. A degree day compares the mean (the average of the high and low) outdoor temperatures recorded for a location to a standard temperature of 65 degrees F/ 18 degree C."
                }
              },
              {
                "#name": "precipitation",
                "Description": {
                  "new": "The amount of precipitation accumulated over the specified day, measured in millimeters (mm) or inches (in), depending on the unit specified in the request.",
                  "old": "The amount of precipitation (liquid equivalent) that has fallen."
                }
              },
              {
                "#name": "snowfall",
                "Description": {
                  "new": "Provides the amount of snow that has fallen over the specified day, measured in centimeters (cm) or inches (in), based on the specified unit in the request.",
                  "old": "The amount of snow that has fallen."
                }
              },
              {
                "#name": "snowDepth",
                "Description": {
                  "new": "Provides the average accumulated snow depth, measured in centimeters (cm) or inches (in), based on the specified unit in the request.",
                  "old": "Snow depth."
                }
              }
            ]
          }
        },
        {
          "#name": "nextLink",
          "Description": {
            "new": "Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results.",
            "old": "The is the link to the next page of the features returned. If it's the last page, no this field."
          }
        }
      ]
    }
  }
}

⚼ Request

GET:  /weather/historical/actuals/daily/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
query: array ,
startDate: string ,
endDate: string ,
unit: string ,
}

⚐ Response (200)

{
results:
[
{
date: string ,
temperature:
{
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
average:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
degreeDaySummary:
{
heating:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
cooling:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
precipitation:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
snowfall:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
snowDepth:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetDailyHistoricalRecords (updated)
Description The `Get Daily Historical Records` API is an HTTP `GET` request that returns climatology data such as past daily record temperatures, precipitation and snowfall at a given coordinate location. Availability of records data will vary by location. Generally, historical data may be available as far back as the last 5 to 40+ years, depending on the location.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetDailyHistoricalRecords",
  "$parameters": [
    {
      "#name": "startDate",
      "Description": {
        "new": "Start date in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-27. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31).",
        "old": "Start date in ISO 8601 format, for example, 2019-10-27. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31)."
      }
    },
    {
      "#name": "endDate",
      "Description": {
        "new": "End date in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-28. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31).",
        "old": "End date in ISO 8601 format, for example, 2019-10-28. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31)."
      }
    }
  ],
  "$responses": {
    "200": {
      "$properties": [
        {
          "#name": "results",
          "Description": {
            "new": "Aggregates detailed climatology data for each requested day, including record temperatures, precipitation, snowfall, snow depth, and degree day summaries.",
            "old": "Historical records for each requested day."
          },
          "$items": {
            "$properties": [
              {
                "#name": "date",
                "Description": {
                  "new": "Date and time of the current observation, displayed in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                  "old": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
                }
              },
              {
                "#name": "temperature",
                "Description": {
                  "new": "Returns the year in which both the minimum and the maximum temperatures occurred on a specified day, along with the recorded amounts. Also returns the average temperature for the given date. Measured in degrees Celsius (C) or Fahrenheit (F), depending on the unit specified in the request.",
                  "old": "Temperature value."
                }
              },
              {
                "#name": "precipitation",
                "Description": {
                  "new": "The amount of precipitation accumulated over the specified day, measured in millimeters (mm) or inches (in), based on the specified unit in the request.",
                  "old": "Maximum amount of precipitation (liquid equivalent) that has fallen."
                }
              },
              {
                "#name": "snowfall",
                "Description": {
                  "new": "Returns the year in which the record high snowfall occurred on a specified date, along with the recorded amounts, measured in centimeters (cm) or inches (in), based on the unit specified in the request.",
                  "old": "Maximum snowfall."
                }
              }
            ]
          }
        },
        {
          "#name": "nextLink",
          "Description": {
            "new": "Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results.",
            "old": "The is the link to the next page of the features returned. If it's the last page, no this field."
          }
        }
      ]
    }
  }
}

⚼ Request

GET:  /weather/historical/records/daily/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
query: array ,
startDate: string ,
endDate: string ,
unit: string ,
}

⚐ Response (200)

{
results:
[
{
date: string ,
temperature:
{
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
year: integer ,
}
,
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
year: integer ,
}
,
average:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
precipitation:
{
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
year: integer ,
}
,
}
,
snowfall:
{
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
year: integer ,
}
,
}
,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}
Weather_GetDailyHistoricalNormals (updated)
Description The `Get Daily Historical Normals` API is an HTTP `GET` request that returns climatology data such as past daily normal temperatures, precipitation and cooling/heating degree day information for the day at a given coordinate location. The historical normals are a 30-year average for temperatures and precipitation for a specific location. As is standard practice in climatology, the 30-year average covers years 1991-2020, this data will be used for one decade and then will reset in the year 2030. Generally, historical data may be available as far back as the last 5 to 40+ years, depending on the location.
Reference Link ¶

⚶ Changes

{
  "#id": "Weather_GetDailyHistoricalNormals",
  "$parameters": [
    {
      "#name": "startDate",
      "Description": {
        "new": "Start date in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-27. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31).",
        "old": "Start date in ISO 8601 format, for example, 2019-10-27. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31)."
      }
    },
    {
      "#name": "endDate",
      "Description": {
        "new": "End date in [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format, for example, 2019-10-28. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31).",
        "old": "End date in ISO 8601 format, for example, 2019-10-28. The date range supported is 1 to 31 calendar days, so be sure to specify a startDate and endDate that does not exceed a maximum of 31 days (i.e.: startDate=2012-01-01&endDate=2012-01-31)."
      }
    }
  ],
  "$responses": {
    "200": {
      "$properties": [
        {
          "#name": "results",
          "Description": {
            "new": "Aggregates detailed climatology data for each requested day, including normal temperatures, precipitation, snowfall, snow depth, and degree day summaries.",
            "old": "Historical normals for each requested day."
          },
          "$items": {
            "$properties": [
              {
                "#name": "date",
                "Description": {
                  "new": "Date and time of the current observation, displayed in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format (yyyy-mm-ddThh:mm:ss-hh:mm). For example, *2025-04-29T07:00:00-07:00*.",
                  "old": "Date and time of the current observation displayed in ISO 8601 format, for example, 2019-10-27T19:39:57-08:00."
                }
              },
              {
                "#name": "temperature",
                "Description": {
                  "new": "Provides the normal high, low, and average temperatures for a specific day at a given location, calculated as a 30-year average (1991-2020).",
                  "old": "Temperature values."
                }
              },
              {
                "#name": "degreeDaySummary",
                "Description": {
                  "new": "Provides a summary of heating and cooling degree days. Heating Degree Days (HDD) measure the demand for energy to heat a building, calculated based on the degrees a day's average temperature is below 65\u00b0F/18\u00b0C. Cooling Degree Days (CDD) measure the demand for energy to cool a building, calculated based on the degrees a day's average temperature is above 65\u00b0F/18\u00b0C. This summary aids in energy management and planning.",
                  "old": "Summary of heating or cooling degree day information"
                }
              },
              {
                "#name": "precipitation",
                "Description": {
                  "new": "Provides the amount of precipitation accumulated over the specified day, measured in millimeters (mm) or inches (in), based on the specified unit in the request.",
                  "old": "The amount of precipitation (liquid equivalent) that has fallen."
                }
              }
            ]
          }
        },
        {
          "#name": "nextLink",
          "Description": {
            "new": "Contains the URL to fetch the next page of results if the response is paginated. This is useful when the response is too large to be returned in a single call, allowing users to navigate through multiple pages of results.",
            "old": "The is the link to the next page of the features returned. If it's the last page, no this field."
          }
        }
      ]
    }
  }
}

⚼ Request

GET:  /weather/historical/normals/daily/{format}
{
x-ms-client-id: string ,
api-version: string ,
format: string ,
query: array ,
startDate: string ,
endDate: string ,
unit: string ,
}

⚐ Response (200)

{
results:
[
{
date: string ,
temperature:
{
maximum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
minimum:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
average:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
degreeDaySummary:
{
heating:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
cooling:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
precipitation:
{
value: number ,
unit: string ,
unitType: integer ,
}
,
}
,
]
,
nextLink: string ,
}

⚐ Response (default)

{
error:
{
code: string ,
message: string ,
target: string ,
details:
[
string ,
]
,
additionalInfo:
[
{
type: string ,
info: object ,
}
,
]
,
}
,
}